package com.ybox.app.mapper;

import com.ybox.app.domain.AppCollect;
import com.ybox.app.domain.example.AppCollectExample;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

/**
 * @author 16554
 */
@Mapper
public interface AppCollectMapper {
    /**
     * countByExample
     *
     * @param example example
     * @return long
     */
    long countByExample(AppCollectExample example);

    /**
     * deleteByExample
     *
     * @param example example
     * @return int
     */
    int deleteByExample(AppCollectExample example);

    /**
     * deleteByPrimaryKey
     *
     * @param collectId collectId
     * @return int
     */
    int deleteByPrimaryKey(String collectId);

    /**
     * insert
     *
     * @param row row
     * @return int
     */
    int insert(AppCollect row);

    /**
     * insertSelective
     *
     * @param row row
     * @return int
     */
    int insertSelective(AppCollect row);

    /**
     * selectByExample
     *
     * @param example example
     * @return List<AppCollect>
     */
    List<AppCollect> selectByExample(AppCollectExample example);

    /**
     * selectByPrimaryKey
     *
     * @param collectId collectId
     * @return AppCollect
     */
    AppCollect selectByPrimaryKey(String collectId);

    /**
     * selectCollectList
     *
     * @param appCollect appCollect
     * @return List<AppCollect>
     */
    List<AppCollect> selectCollectList(AppCollect appCollect);

    /**
     * updateByExampleSelective
     *
     * @param row     row
     * @param example example
     * @return int
     */
    int updateByExampleSelective(@Param("row") AppCollect row, @Param("example") AppCollectExample example);

    /**
     * updateByExample
     *
     * @param row     row
     * @param example example
     * @return int
     */
    int updateByExample(@Param("row") AppCollect row, @Param("example") AppCollectExample example);

    /**
     * updateByPrimaryKeySelective
     *
     * @param row row
     * @return int
     */
    int updateByPrimaryKeySelective(AppCollect row);

    /**
     * updateByPrimaryKey
     *
     * @param row row
     * @return int
     */
    int updateByPrimaryKey(AppCollect row);

    /**
     * updateBatch
     * @param list list
     * @return int
     */
    int updateBatch(List<AppCollect> list);

    /**
     * updateBatchSelective
     * @param list list
     * @return int
     */
    int updateBatchSelective(List<AppCollect> list);

}